home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / hf^k-7.dms / in.adf / envWWW21 / www / arexx / editform.ged < prev    next >
Encoding:
Text File  |  1996-01-19  |  9.5 KB  |  349 lines

  1. /* $VER: 1.0, ©1996 Dietmar Eilert. Create empty list */
  2.  
  3. OPTIONS RESULTS                             /* enable return codes     */
  4. arg TYPE
  5.  
  6. if (LEFT(ADDRESS(), 6) ~= "GOLDED") then    /* not started by GoldEd ? */
  7.     address 'GOLDED.1'
  8.  
  9. 'LOCK CURRENT RELEASE=4'                    /* lock GUI, gain access   */
  10.  
  11. if (RC ~= 0) then
  12.     exit
  13.  
  14. OPTIONS FAILAT 6                            /* ignore warnings         */
  15.  
  16. SIGNAL ON SYNTAX                            /* ensure clean exit       */
  17.  
  18. /* ------------------------ INSERT YOUR CODE HERE: ------------------- */
  19.  
  20. ID = 1
  21.  
  22. do forever
  23.  
  24.     'FIND FIRST QUIET STRING="FIELD' || ID || '"'
  25.  
  26.     if (RC = 0) then
  27.         ID = ID + 1
  28.     else
  29.         break;
  30. end
  31.  
  32. 'FIND NEXT QUIET STRING="</FORM>"'
  33.  
  34. if (RC ~= 0) then
  35.     'FIND FIRST QUIET STRING="</FORM>"'
  36.  
  37. if (RC = 0) then do
  38.  
  39.     'QUERY DOC VAR=DOC'
  40.  
  41.     'SUFFIX STRING="' || DOC || '" SUFFIX=".html"'
  42.  
  43.     'NAME NEW=' || RESULT
  44.  
  45.     'UP'
  46.  
  47.     /* string field */
  48.  
  49.     if (TYPE = 1) then do
  50.  
  51.         'REQUEST LONG TITLE="Form Wizard" BODY="Number of characters that can be written to the field" MIN=1 MAX=255 OLD=40 VAR=MAXLEN'
  52.  
  53.         if (RC = 0) then do
  54.  
  55.             'REQUEST STRING TITLE="Form Wizard" BODY="Set field''s default value" VAR=VALUE MAX=' || MAXLEN
  56.  
  57.             if (RC = 0) then do
  58.  
  59.                 'REQUEST STRING TITLE="Form Wizard" BODY="Field description (if any)" VAR=COMMENT'
  60.  
  61.                 if (RC = 0) then do
  62.  
  63.                     'REQUEST LONG TITLE="Form Wizard" BODY="Field size (units are characters)" MIN=1 MAX=255 OLD=40 VAR=SIZE'
  64.  
  65.                     if (RC = 0) then do
  66.  
  67.                         'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  68.  
  69.                         if (RC = 0) then do
  70.  
  71.                             'FIX VAR=VALUE'
  72.                             'FIX VAR=COMMENT'
  73.                             'FIX VAR=IDCODE'
  74.  
  75.                             'INSERT LINE'
  76.                             'INSERT LINE'
  77.                             'INSERT LINE'
  78.                             'DOWN'
  79.                             'TEXT STAY T="<P>"'
  80.                             'DOWN'
  81.                             'TEXT STAY T="<INPUT TYPE=text NAME=*"' || IDCODE || '*" VALUE=*"' || VALUE || '*" MAXLENGTH=' || MAXLEN || ' SIZE=' || SIZE || '> ' || COMMENT || '"'
  82.                             'DOWN'
  83.  
  84.                             ID = ID + 1
  85.                         end
  86.                     end
  87.                 end
  88.             end
  89.         end
  90.     end
  91.  
  92.     /* password */
  93.  
  94.     if (TYPE = 2) then do
  95.  
  96.         'REQUEST LONG TITLE="Form Wizard" BODY="Number of characters that can be written to the field" MIN=1 MAX=255 OLD=40 VAR=MAXLEN'
  97.  
  98.         if (RC = 0) then do
  99.  
  100.             'REQUEST STRING TITLE="Form Wizard" BODY="Set field''s default value" VAR=VALUE MAX=' || MAXLEN
  101.  
  102.             if (RC = 0) then do
  103.  
  104.                 'REQUEST STRING TITLE="Form Wizard" BODY="Field description (if any)" OLD="Password" VAR=COMMENT'
  105.  
  106.                 if (RC = 0) then do
  107.  
  108.                     'REQUEST LONG TITLE="Form Wizard" BODY="Field size (units are characters)" MIN=1 MAX=255 OLD=40 VAR=SIZE'
  109.  
  110.                     if (RC = 0) then do
  111.  
  112.                         'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  113.  
  114.                         if (RC = 0) then do
  115.  
  116.                             'FIX VAR=VALUE'
  117.                             'FIX VAR=COMMENT'
  118.                             'FIX VAR=IDCODE'
  119.  
  120.                             'INSERT LINE'
  121.                             'INSERT LINE'
  122.                             'INSERT LINE'
  123.                             'DOWN'
  124.                             'TEXT STAY T="<P>"'
  125.                             'DOWN'
  126.                             'TEXT STAY T="<INPUT TYPE=password NAME=*"' || IDCODE || '*" VALUE=*"' || VALUE || '*" MAXLENGTH=' || MAXLEN || ' SIZE=' || SIZE || '> ' || COMMENT || '"'
  127.                             'DOWN'
  128.  
  129.                             ID = ID + 1
  130.                         end
  131.                     end
  132.                 end
  133.             end
  134.         end
  135.     end
  136.  
  137.     /* textarea */
  138.  
  139.     if (TYPE = 3) then do
  140.  
  141.         'REQUEST LONG TITLE="Form Wizard" BODY="Number of columns" MIN=1 MAX=255 OLD=40 VAR=COLUMNS'
  142.  
  143.         if (RC = 0) then do
  144.  
  145.             'REQUEST LONG TITLE="Form Wizard" BODY="Number of rows" MIN=1 MAX=255 OLD=10 VAR=ROWS'
  146.  
  147.             if (RC = 0) then do
  148.  
  149.                 'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  150.  
  151.                 if (RC = 0) then do
  152.  
  153.                     'FIX VAR=IDCODE'
  154.  
  155.                     'INSERT LINE'
  156.                     'INSERT LINE'
  157.                     'DOWN'
  158.                     'TEXT STAY T="<P>"'
  159.                     'DOWN'
  160.                     'TEXT STAY T="<TEXTAREA NAME=*"' || IDCODE || '*" ROWS=' || ROWS || ' COLS=' || COLUMNS || '></TEXTAREA>"'
  161.                     'DOWN'
  162.                     'INSERT LINE'
  163.  
  164.                     ID = ID + 1
  165.                 end
  166.             end
  167.         end
  168.     end
  169.  
  170.     /* radio */
  171.  
  172.     if (TYPE = 4) then do
  173.  
  174.         'REQUEST LONG TITLE="Form Wizard" BODY="Number of radio buttons" MIN=2 MAX=255 OLD=2 VAR=OPTIONS'
  175.  
  176.         if (RC = 0) then do
  177.  
  178.             'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  179.  
  180.             if (RC = 0) then do
  181.  
  182.                 'FIX VAR=IDCODE'
  183.  
  184.                 'INSERT LINE'
  185.                 'INSERT LINE'
  186.                 'DOWN'
  187.                 'TEXT STAY T="<P>"'
  188.                 'DOWN'
  189.  
  190.                 do OPTION = 1 to OPTIONS
  191.  
  192.                     if (OPTION = OPTIONS) then
  193.                         'TEXT STAY T="<INPUT TYPE=radio NAME=*"' || IDCODE || '*" VALUE=*"radio button ' || OPTION || '*"> radio button"'
  194.                     else
  195.                         'TEXT STAY T="<INPUT TYPE=radio NAME=*"' || IDCODE || '*" VALUE=*"radio button ' || OPTION || '*"> radio button<BR>"'
  196.  
  197.                     'DOWN'
  198.                     'INSERT LINE'
  199.                 end
  200.  
  201.                 ID = ID + 1
  202.             end
  203.         end
  204.     end
  205.  
  206.     /* list */
  207.  
  208.     if (TYPE = 5) then do
  209.  
  210.         'REQUEST LONG TITLE="Form Wizard" BODY="Number of list items" MIN=2 MAX=255 OLD=2 VAR=OPTIONS'
  211.  
  212.         if (RC = 0) then do
  213.  
  214.             'REQUEST TITLE="Form Wizard" BODY="Allow multiple selections ?" BUTTON="!Single|_Multiple|_Cancel" VAR=MULTIPLE'
  215.  
  216.             if ((RC = 0) & (MULTIPLE ~= 0)) then do
  217.  
  218.                 'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  219.  
  220.                 if (RC = 0) then do
  221.  
  222.                     'FIX VAR=IDCODE'
  223.  
  224.                     'INSERT LINE'
  225.                     'INSERT LINE'
  226.                     'INSERT LINE'
  227.                     'DOWN'
  228.                     'TEXT STAY T="<P>"'
  229.                     'DOWN'
  230.  
  231.                     if (MULTIPLE = 1) then
  232.                         'TEXT STAY T="<SELECT NAME=*"' || IDCODE || '*">"'
  233.                     else
  234.                         'TEXT STAY T="<SELECT NAME=*"' || IDCODE || '*" MULTIPLE>"'
  235.  
  236.                     'DOWN'
  237.                     'INSERT LINE'
  238.                     'TEXT STAY T="</SELECT>"'
  239.  
  240.                     do OPTION = 1 to OPTIONS
  241.  
  242.                         'INSERT LINE'
  243.                         'TEXT STAY T="<OPTION>' || 'item' || '</OPTION>"'
  244.                         'DOWN'
  245.                     end
  246.  
  247.                     'DOWN'
  248.  
  249.                     ID = ID + 1
  250.                 end
  251.             end
  252.         end
  253.     end
  254.  
  255.     /* checkbox */
  256.  
  257.     if (TYPE = 6) then do
  258.  
  259.         'REQUEST TITLE="Form Wizard" BODY="Set field''s default value" BUTTON="!NORMAL|Checke_d" VAR=CHECKED'
  260.  
  261.         if (RC = 0) then do
  262.  
  263.             'REQUEST STRING TITLE="Form Wizard" BODY="Field description (if any)" VAR=COMMENT'
  264.  
  265.             if (RC = 0) then do
  266.  
  267.                 'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  268.  
  269.                 if (RC = 0) then do
  270.  
  271.                     'FIX VAR=COMMENT'
  272.                     'FIX VAR=IDCODE'
  273.  
  274.                     'INSERT LINE'
  275.                     'INSERT LINE'
  276.                     'INSERT LINE'
  277.                     'DOWN'
  278.                     'TEXT STAY T="<P>"'
  279.                     'DOWN'
  280.  
  281.                     if (CHECKED = 0) then
  282.                         'TEXT STAY T="<INPUT TYPE=checkbox NAME=*"' || IDCODE || '*" CHECKED> ' || COMMENT || '"'
  283.                     else
  284.                         'TEXT STAY T="<INPUT TYPE=checkbox NAME=*"' || IDCODE || '*"> ' || COMMENT || '"'
  285.  
  286.                     'DOWN'
  287.  
  288.                     ID = ID + 1
  289.                 end
  290.             end
  291.         end
  292.     end
  293.  
  294.     /* hidden */
  295.  
  296.     if (TYPE = 7) then do
  297.  
  298.         'REQUEST STRING TITLE="Form Wizard" BODY="Select value of hidden field" VAR=VALUE'
  299.  
  300.         if (RC = 0) then do
  301.  
  302.             'REQUEST STRING TITLE="Form Wizard" BODY="Select field''s ID code" OLD="FIELD' || ID || '" VAR=IDCODE'
  303.  
  304.             if (RC = 0) then do
  305.  
  306.                 'FIX VAR=VALUE'
  307.                 'FIX VAR=IDCODE'
  308.  
  309.                 'INSERT LINE'
  310.                 'INSERT LINE'
  311.                 'DOWN'
  312.                 'TEXT STAY T="<INPUT TYPE=hidden NAME=*"' || IDCODE || '*" VALUE=*"' || VALUE || '*">"'
  313.                 'DOWN'
  314.             end
  315.  
  316.             ID = ID + 1
  317.         end
  318.     end
  319. end
  320. else do
  321.  
  322.     'REQUEST BODY="Form not found. Create new form ?" BUTTON="!CREATE|_Cancel"'
  323.  
  324.     if (RESULT=1) then do
  325.  
  326.         'UNLOCK'
  327.  
  328.         address 'AREXX'
  329.  
  330.         'golded:tools/www/arexx/form.ged'
  331.  
  332.         exit
  333.     end
  334. end
  335.  
  336. /* ---------------------------- END OF YOUR CODE --------------------- */
  337.  
  338. 'UNLOCK' /* VERY important: unlock GUI */
  339.  
  340. exit
  341.  
  342. SYNTAX:
  343.  
  344. SAY "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
  345.  
  346. 'UNLOCK'
  347.  
  348. exit
  349.